草庐IT

Java Tomcat 启用缓存

全部标签

java - 当构建版本不是-SNAPSHOT 时如何启用 Maven 配置文件?

我正在尝试使用gitflow-helper-maven-plugin我的Maven构建的扩展。因此,我想配置我的项目,以便在构建发布版本时运行一些额外的步骤,并在编译SNAPSHOT版本时跳过它们,但是如果${project.version包含-SNAPSHOT。有什么建议吗? 最佳答案 下面是一种可能的方法,您可以始终在Maven构建中模拟if语句:使用buid-helper-maven-plugin及其regex-property目标来解析默认的${project.version}属性并创建一个新的${only.when.is.

java - Lucene 似乎在缓存搜索结果——为什么?

在我的项目中,我们使用Lucene2.4.1进行全文搜索。这是一个J2EE项目,IndexSearcher创建一次。在后台,索引每两分钟刷新一次(当内容改变时)。用户可以通过页面上的搜索机制搜索索引。问题是,Lucene返回的结果似乎以某种方式被缓存了。这是我注意到的场景:我启动应用程序并搜索“关键字”-返回了6个结果,索引已刷新,使用Luke我看到,现在有8个结果可以查询“关键字”,我再次使用该应用程序进行搜索,再次返回6个结果。我分析了我们的配置,并没有在任何地方发现任何缓存。我调试了搜索,输出代码中没有缓存,searcher.search返回6个结果。Lucene是否以某种方式在

Java Tomcat 启用缓存

在tomcat上设置缓存的最佳方法是什么?还有缓存是如何工作的?它是基于url,基于目录还是什么?我需要特定于url的缓存,这样数据库就不会对相同的url进行相同的计算 最佳答案 最简单的方法是使用专用的网络缓存提供程序。Tomcat没有OOTB,但您可以使用Apachewithmod_cache(显然是mod_jk)。在此配置中,Apache倾向于充当缓存由Tomcat提供的动态内容的代理缓存;您必须确保Tomcat提供正确的header以确保Apache缓存响应。还有其他商业网络缓存解决方案,但它们通常用于高端用途。您还可以使用

java - 如何使用 Grizzly2 在 Jersey 中以编程方式启用 POJO 映射?

按照说明操作here我有这段代码:privatestaticURIgetBaseURI(){returnUriBuilder.fromUri("http://localhost/").port(9998).build();}publicstaticfinalURIBASE_URI=getBaseURI();protectedstaticHttpServerstartServer()throwsIOException{System.out.println("Startinggrizzly...");finalResourceConfigrc=newPackagesResourceConf

java - CommandLink 不在 jsf 表单中,因为我已将它添加到模板中。但是它被禁用了。有没有其他方法可以启用它?

我已将我的commandLink(这是注销链接)添加到模板文件中,该文件不在jsf表单中。主模板.xhtml在使用该模板的网页上,我将所有元素都放在一个jsf表单中:NewWelcome.xhtmlHereihaveallthepagespecificcontent我希望一旦我在带有jsf表单的页面中使用模板,注销就会起作用。但是,注销命令链接显示错误:注销:此链接已禁用,因为它未嵌套在JSF表单中。我知道一个明确的解决方案是将此元素单独添加到每个将使用该模板的xhtml页面中。但我希望将其添加到模板本身,因为它是所有页面中的公共(public)元素。任何帮助将不胜感激。谢谢你!:)编

java - 启用安全性时从 Eclipse 启动 Websphere 挂起

我有一个WebsphereApplicationServer8.0.0.6,它是作为RAD的一部分安装的。我需要从EclipseJavaEEKepler或Luna运行服务器。禁用管理安全性时没有问题。但是,一旦启用安全性,服务器要么没有完全启动,要么Ecplise无法检测到它。进度条停在23%。最后记录的消息是“服务器server1为电子商务打开”。然而,状态仍然是“开始”。过了一会儿,我收到一个错误,提示服务器没有在300秒内启动。然后它会尝试停止服务器,并无限期地保持“停止”状态。服务器已启动,Eclipse似乎无法看到它。我无法从Eclipse中访问管理控制台(虽然我可以使用浏览

java - Hibernate 二级缓存似乎不起作用

我目前正在尝试使用hibernate附带的缓存提供程序让hibernate工作。net.sf.ehcache.hibernate.SingletonEhCacheProvider我在我的hibernate.cfg.xml文件中引用的ecache.xml中启用了默认缓存和类特定缓存。类/映射文件特定缓存被定义为处理多达20000个对象。但是,自从我在我用来测试它的映射文件之一上打开缓存映射后,我没有看到任何性能提升。我的测试如下。加载特定映射文件im测试的10000个对象(这应该会影响数据库并成为瓶颈)。接下来我去加载相同的10000个对象,因为此时我希望缓存被命中并看到显着的性能提升。

java - java.lang.String 的哈希码真的被缓存了吗?

Strings1="String1";System.out.println(s1.hashCode());//returnanintegeri1Fieldfield=String.class.getDeclaredField("value");field.setAccessible(true);char[]value=(char[])field.get(s1);value[0]='J';value[1]='a';value[2]='v';value[3]='a';value[4]='1';System.out.println(s1.hashCode());//returnsameval

java - 使用 ConcurrentHashMap 缓存

我有以下代码:publicclassCache{privatefinalMapmap=newConcurrentHashMap();publicObjectget(Objectkey){Objectvalue=map.get(key);if(value==null){value=newSomeObject();map.put(key,value);}returnvalue;}}我的问题是:map的put和get方法是线程安全的,但由于整个block未同步-多个线程可以添加相同的键两次吗? 最佳答案 put和get是线程安全的,因为从

java - hibernate 缓存和 Spring 框架缓存有什么区别?

我有一个应用程序,可以从数据库中获取数据(使用hibernate)。我想每天一次用数据库状态加载缓存(每个用户),然后改用缓存。我将Spring框架与Hibernate一起使用,我知道它们都有一些缓存的可能性。它们之间有什么区别?什么是更好的选择? 最佳答案 StartingwithHibernatecacheisamoreprudentdecisioninmyview,especiallybecausethetwodon'texcludeeachother.IntermsofperformanceSpringcachecanoff